1 /***
2 * @version $Revision: 1.2 $
3 */
4 package uba.db.sql.interpreter;
5
6 import uba.db.Database;
7 import uba.db.UnknowTableName;
8 import uba.db.sql.language.TableName;
9 import uba.db.sql.language.VisitorBehavior;
10 import uba.db.table.Table;
11
12 public class TablesToJoinVisitor extends VisitorBehavior {
13 private SelectQueryPlan queryPlan;
14 private Database database;
15
16 public TablesToJoinVisitor(SelectQueryPlan plan, Database database) {
17 queryPlan = plan;
18 this.database = database;
19 }
20
21 /***
22 * @see uba.db.sql.language.Visitor#visitTableName(uba.db.sql.language.TableName)
23 */
24 public void visitTableName(TableName tableName) {
25
26 Table table;
27 try {
28 table = database.tableNamed(tableName.toString());
29 queryPlan.addTable(table);
30 } catch (UnknowTableName e) {
31
32
33 throw new Error(e);
34 }
35 }
36 }